package com.cangxuan.app.entity;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 藏品实体类
 */
public class Collections implements Serializable {
    private Integer id; //商品ID
    private String collectionName; //商品名称
    private Integer mintage; //铸造量
    private Integer circulation; //流通量
    private Float offerPrice; //发售价
    private String issuer; //发行方
    private String blockchain; //区块链信息
    private String confirmation; //确权信息
    private String code; //藏品编号
    private String hash; //交易hash
    private LocalDateTime releaseDate; //发售日期
    private String commercialEquity; //商业性权益须知
    private String preventingSpeculation; //防止投机炒作规则
    private String image; //藏品图片
    private String typeDescription;
    private String description;

    private Float price;

    public String getConfirmation() {
        return confirmation;
    }

    public void setConfirmation(String confirmation) {
        this.confirmation = confirmation;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getHash() {
        return hash;
    }

    public void setHash(String hash) {
        this.hash = hash;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }



    public Collections(Integer id, String collectionName, Integer mintage, Float offerPrice, LocalDateTime releaseDate, String image) {
        this.id = id;
        this.collectionName = collectionName;
        this.mintage = mintage;
        this.offerPrice = offerPrice;
        this.releaseDate = releaseDate;
        this.image = image;
    }

    public Collections(Integer id, String collectionName, Integer mintage, String issuer, String image, Float offerPrice) {
        this.id = id;
        this.collectionName = collectionName;
        this.mintage = mintage;
        this.issuer = issuer;
        this.image = image;
        this.offerPrice = offerPrice;
    }

    public Collections(Integer id, String collectionName, Integer mintage, Integer circulation, Float offerPrice, String typeDescription, String description, String blockchain, LocalDateTime releaseDate, String commercialEquity, String preventingSpeculation, String issuer, Float price) {
        this.id = id;
        this.collectionName = collectionName;
        this.mintage = mintage;
        this.circulation = circulation;
        this.offerPrice = offerPrice;
        this.typeDescription = typeDescription;
        this.description = description;
        this.blockchain = blockchain;
        this.releaseDate = releaseDate;
        this.commercialEquity = commercialEquity;
        this.preventingSpeculation = preventingSpeculation;
        this.issuer = issuer;
        this.price = price;
    }

    public Float getPrice() {
        return price;
    }

    public void setPrice(Float price) {
        this.price = price;
    }

    public Collections(Integer id, String collectionName, Integer mintage, Integer circulation, Float offerPrice, String typeDescription, String description, String blockchain, LocalDateTime releaseDate, String commercialEquity, String preventingSpeculation, String issuer) {
        this.id = id;
        this.collectionName = collectionName;
        this.mintage = mintage;
        this.circulation = circulation;
        this.offerPrice = offerPrice;
        this.typeDescription = typeDescription;
        this.description = description;
        this.blockchain = blockchain;
        this.releaseDate = releaseDate;
        this.commercialEquity = commercialEquity;
        this.preventingSpeculation = preventingSpeculation;
        this.issuer = issuer;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getCollectionName() {
        return collectionName;
    }

    public void setCollectionName(String collectionName) {
        this.collectionName = collectionName;
    }

    public Integer getMintage() {
        return mintage;
    }

    public void setMintage(Integer mintage) {
        this.mintage = mintage;
    }

    public Integer getCirculation() {
        return circulation;
    }

    public void setCirculation(Integer circulation) {
        this.circulation = circulation;
    }

    public Float getOfferPrice() {
        return offerPrice;
    }

    public void setOfferPrice(Float offerPrice) {
        this.offerPrice = offerPrice;
    }

    public String getTypeDescription() {
        return typeDescription;
    }

    public void setTypeDescription(String typeDescription) {
        this.typeDescription = typeDescription;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getBlockchain() {
        return blockchain;
    }

    public void setBlockchain(String blockchain) {
        this.blockchain = blockchain;
    }

    public LocalDateTime getReleaseDate() {
        return releaseDate;
    }

    public void setReleaseDate(LocalDateTime releaseDate) {
        this.releaseDate = releaseDate;
    }

    public String getCommercialEquity() {
        return commercialEquity;
    }

    public void setCommercialEquity(String commercialEquity) {
        this.commercialEquity = commercialEquity;
    }

    public String getPreventingSpeculation() {
        return preventingSpeculation;
    }

    public void setPreventingSpeculation(String preventingSpeculation) {
        this.preventingSpeculation = preventingSpeculation;
    }

    public Collections(Integer id, String collectionName, Integer mintage, Integer circulation, Float offerPrice, String typeDescription, String description, String blockchain, LocalDateTime releaseDate, String commercialEquity, String preventingSpeculation) {
        this.id = id;
        this.collectionName = collectionName;
        this.mintage = mintage;
        this.circulation = circulation;
        this.offerPrice = offerPrice;
        this.typeDescription = typeDescription;
        this.description = description;
        this.blockchain = blockchain;
        this.releaseDate = releaseDate;
        this.commercialEquity = commercialEquity;
        this.preventingSpeculation = preventingSpeculation;
    }

    public String getIssuer() {
        return issuer;
    }

    public void setIssuer(String issuer) {
        this.issuer = issuer;
    }

    @Override
    public String toString() {
        return "CollectionDetail{" +
                "id=" + id +
                ", collectionName='" + collectionName + '\'' +
                ", mintage=" + mintage +
                ", circulation=" + circulation +
                ", offerPrice=" + offerPrice +
                ", typeDescription='" + typeDescription + '\'' +
                ", description='" + description + '\'' +
                ", blockchain='" + blockchain + '\'' +
                ", releaseDate=" + releaseDate +
                ", commercialEquity='" + commercialEquity + '\'' +
                ", preventingSpeculation='" + preventingSpeculation + '\'' +
                ", issuer='" + issuer + '\'' +
                '}';
    }
}
